
# 列表推导式
"""
1. 概念 ：能快速生成一个新列表的一种写法
2. 作用 ：生成一个新列表 ，比较简单的列表 。
3. 格式：[expB for x in iterable expA]
4. 说明：
    (1) . 执行顺序来说 ，先执行for循环,再执行expA ,最后执行expB
    (2). expA是一个可选项 ，可以省略 。
    (3). expA 可以一个条件语句 ，也可以循环
    (4). expB 可以是一个值 ，也可以是一个表达式， 也可以是一个函数。
"""

# 需求 ： 生成一个0~9的列表
lst = []
for x in range(0,10):
    lst.append(x)
print(lst)

print([x for x in range(0,10)])

# 需求2 ： 生成一个0~9的列表 ，要求列表中全部是奇数 。
lst = []
for x in range(0,10):
    if x % 2:
        lst.append(x)
print(lst)

print([x for x in range(1,10,2)])
print([x for x in range(1,10) if x % 2])

lst1 = []
for x in range(1,3):
    for y in ['x', 'y', 'z']:
        lst1.append(y+str(x))
print(lst1)


lst4 = [y+str(x) for x in range(1,3) for y in ['x','y','z']]
print(lst4)